package exception01;
/*
* throws关键字
*   当方法中抛出异常对象，我们为了让调用者知晓这个方法可能有异常抛出
*   需要在方法上通过throws关键字声明异常类
*   格式：
*       修饰符 返回值类型 方法名(形参列表) throws 异常类名1,异常类名2...
* */
public class ExceptionDemo04 {
    public static void main (String[] args) throws Exception { // main方法这里的throws异常声明是给JVM看的

        /*int totalprice = getTotalprice(-2, 30);
        System.out.println(totalprice);  // -60*/

        int totalprice1 = getTotalprice(2, -30);
        System.out.println(totalprice1);
    }

    /**   文档注释               快捷键： / **　+　enter
     * @param price   单价
     * @param amount  数量
     * @return       返回总价
     */
    public static int getTotalprice(int price,int amount) throws Exception{ // 这个异常声明是给调用者getTotalprice()看的
        if(price<=0  ){                                       // 当他看到这个异常声明就知道要处理
            throw new Exception("单价不能小于0");
        }
        if (amount<=0){
            throw new Exception("数量不能为0");
        }
        return price*amount;
    }
}
